﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text;
using Best.SmartCms.Domain.Common;

namespace Best.SmartCms.Domain
{
    [Table("Order")]
    public class Order : BaseDomain
    {
        /// <summary>
        /// 订单编号
        /// </summary>
        [StringLength(50)]
        public string OrderNumber { get; set; }

        /// <summary>
        /// 下单地址
        /// </summary>
        public long? AddressId { get; set; }

        /// <summary>
        /// 下单客户
        /// </summary>
        public long? CustomerId { get; set; }

        /// <summary>
        /// 支付方式
        /// </summary>
        public int PayType { get; set; }
        /// <summary>
        /// 物流方式
        /// </summary>
        public int? ShippingMethod { get; set; }

        /// <summary>
        /// 订单状态
        /// </summary>
        public int Status { get; set; }

        /// <summary>
        /// 订单总金额
        /// </summary>
        public decimal? OrderTotal { get; set; }

        /// <summary>
        /// 订单折扣
        /// </summary>
        public decimal? OrderDiscount { get; set; }

        /// <summary>
        /// 退款金额
        /// </summary>
        public decimal? RefundedAmount { get; set; }

        /// <summary>
        /// 第三方交易编号
        /// </summary>
        public string TransactionNumber { get; set; }

        /// <summary>
        /// 第三方交易时间
        /// </summary>
        public DateTime? TransactionDate { get; set; }

        /// <summary>
        /// 删除标记
        /// </summary>
        public bool? Deleted { get; set; }
    }
}
